Component({
  // 启用插槽
  // options: {
  //   multipleSlots: true
  // },
  properties: {
    show: {
      type: Boolean,
      default: false
    }
  },
  data: {
    isShow: false,
    hiddenMask: false
  },
  // 监听父级属性变化
  observers: {
    'show'(newVal) {
      if (newVal) {
        this.open()
      } else {
        this.close()
      }
    }
  },
  methods: {
    // 打开
    open() {
      this.setData({
        isShow: true
      })
      setTimeout(() => {
        this.setData({
          hiddenMask: false
        })
      }, 100)
    },
    // 关闭
    close() {
      this.setData({
        hiddenMask: true
      })
      setTimeout(() => {
        this.setData({
          isShow: false
        })
      }, 500)
    }
  }
})